#include "stdafx.h"
#include "bitmap.h"
#include "bitmap_i.h"


// FUNCTION SYMBOLS FOR EXPORTING ///////////////

/* **********************************************
 * NAME				BITMAP_LoadFile
 *
 * PARAMETERS
 *	hFile	in		Handle of the bitmap file
 *	sImage	out		Store the image information
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_LoadFile(HANDLE hFile,
								PIMAGE sImage) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_ReadFile
 *
 * PARAMETERS
 *	hFile	in		Handle of the goal bitmap file
 *	sImage	in		The image information
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_SaveFile(HANDLE hFile,
								PIMAGE sImage) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_24TO8
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *	sPalette	in	destination palette
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_24TO8(PIMAGE sImageSrc,
							 PIMAGE sImageDst,
							 PRGBQUAD sPalette) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_24TO8G
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_24TO8G(PIMAGE sImageSrc,
							  PIMAGE sImageDst) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_24TO4
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *	sPalette	in	destination palette
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_24TO4(PIMAGE sImageSrc,
							 PIMAGE sImageDst,
							 PRGBQUAD sPalette) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_24TO1
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *	sPalette	in	threshold
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_24TO1(PIMAGE sImageSrc,
							 PIMAGE sImageDst,
							 int threshold) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_8TO24
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *	sPalette	in	destination palette
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_8TO24(PIMAGE sImageSrc,
							 PIMAGE sImageDst,
							 PRGBQUAD sPalette) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_8TO24
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_8TO24(PIMAGE sImageSrc,
							PIMAGE sImageDst) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_8TO4
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *	sPalette	in	destination palette
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_8TO4(PIMAGE sImageSrc,
							PIMAGE sImageDst,
							PRGBQUAD sPalette) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_8TO1
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *	threshold	in	threshold
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_8TO1(PIMAGE sImageSrc,
							PIMAGE sImageDst,
							int threshold) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_4TO24
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_4TO24(PIMAGE sImageSrc,
							 PIMAGE sImageDst) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_4TO8
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *	sPalette	in	destination palette
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_4TO8(PIMAGE sImageSrc,
							PIMAGE sImageDst,
							PRGBQUAD sPalette) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_4TO1
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *	sPalette	in	destination palette
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_4TO1(PIMAGE sImageSrc,
							PIMAGE sImageDst,
							int threshold) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_1TO24
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *	
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_1TO24(PIMAGE sImageSrc,
							 PIMAGE sImageDst) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_1TO8
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_1TO8(PIMAGE sImageSrc,
							PIMAGE sImageDst) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_1TO4
 *
 * PARAMETERS
 *	sImageSrc	in	source image
 *	sImageDst	in	destination image
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_1TO4(PIMAGE sImageSrc,
							PIMAGE sImageDst) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_P8TO4
 *
 * PARAMETERS
 *	sPaletteSrc	in	source image
 *	sPaletteDst	in	destination image
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_P8TO4(PRGBQUAD sPaletteSrc,
							 PRGBQUAD sPaletteDst) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_P8TO1
 *
 * PARAMETERS
 *	sPaletteSrc	in	source palette
 *	sPaletteDst	in	destination palette
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_P8TO1(PRGBQUAD sPaletteSrc,
							 PRGBQUAD sPaletteDst) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_P4TO8
 *
 * PARAMETERS
 *	sPaletteSrc	in	source palette
 *	sPaletteDst	in	destination palette
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_P4TO8(PRGBQUAD sPaletteSrc,
							 PRGBQUAD sPaletteDst) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_P4TO1
 *
 * PARAMETERS
 *	sPaletteSrc	in	source palette
 *	sPaletteDst	in	destination palette
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_P4TO1(PRGBQUAD sPaletteSrc,
							 PRGBQUAD sPaletteDst) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_P1TO8
 *
 * PARAMETERS
 *	sPaletteSrc	in	source palette
 *	sPaletteDst	in	destination palette
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_P1TO8(PRGBQUAD sPaletteSrc,
							 PRGBQUAD sPaletteDst) {
	return TRUE;
}

/* **********************************************
 * NAME				BITMAP_P1TO4
 *
 * PARAMETERS
 *	sPaletteSrc	in	source palette
 *	sPaletteDst	in	destination palette
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BITMAP_API BOOL BITMAP_P1TO4(PRGBQUAD sPaletteSrc,
							 PRGBQUAD sPaletteDst) {
	return TRUE;
}

/////////////////////////////////////////////////


// INTERNAL FUNCTION SYMBOLS ////////////////////

/* **********************************************
 * NAME				LoadFile_1Bit
 *
 * PARAMETERS
 *	bFileData	in	file data
 *	sImage		out	image data
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BOOL LoadFile_1Bit(PBYTE bFileData,
				   PIMAGE sImage) {
	return TRUE;
}

/* **********************************************
 * NAME				LoadFile_4Bit
 *
 * PARAMETERS
 *	bFileData	in	file data
 *	sImage		out	image data
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BOOL LoadFile_4Bit(PBYTE bFileData,
				   PIMAGE sImage) {
	return TRUE;
}

/* **********************************************
 * NAME				LoadFile_8Bit
 *
 * PARAMETERS
 *	bFileData	in	file data
 *	sImage		out	image data
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BOOL LoadFile_8Bit(PBYTE bFileData,
				   PIMAGE sImage) {
	return TRUE;
}

/* **********************************************
 * NAME				LoadFile_24Bit
 *
 * PARAMETERS
 *	bFileData	in	file data
 *	sImage		out	image data
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BOOL LoadFile_24Bit(PBYTE bFileData,
					PIMAGE sImage) {
	return TRUE;
}

/* **********************************************
 * NAME				LoadFile_RLE
 *
 * PARAMETERS
 *	bFileData	in	file data
 *	sImage		out	image data
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BOOL LoadFile_RLE4(PBYTE bFileData,
				   PIMAGE sImage) {
	return TRUE;
}

/* **********************************************
 * NAME				LoadFile_RLE8
 *
 * PARAMETERS
 *	bFileData	in	file data
 *	sImage		out	image data
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BOOL LoadFile_RLE8(PBYTE bFileData,
				   PIMAGE sImage) {
	return TRUE;
}

/* **********************************************
 * NAME				SaveFile_1Bit
 *
 * PARAMETERS
 *	bFileData	in	file data
 *	sImage		out	image data
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BOOL SaveFile_1Bit(PBYTE bFileData,
				   PIMAGE sImage) {
	return TRUE;
}

/* **********************************************
 * NAME				SaveFile_4Bit
 *
 * PARAMETERS
 *	bFileData	in	file data
 *	sImage		out	image data
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BOOL SaveFile_4Bit(PBYTE bFileData,
				   PIMAGE sImage) {
	return TRUE;
}

/* **********************************************
 * NAME				SaveFile_8Bit
 *
 * PARAMETERS
 *	bFileData	in	file data
 *	sImage		out	image data
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BOOL SaveFile_8Bit(PBYTE bFileData,
				   PIMAGE sImage) {
	return TRUE;
}

/* **********************************************
 * NAME				SaveFile_24Bit
 *
 * PARAMETERS
 *	bFileData	in	file data
 *	sImage		out	image data
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BOOL SaveFile_24Bit(PBYTE bFileData,
					PIMAGE sImage) {
	return TRUE;
}

/* **********************************************
 * NAME				SaveFile_RLE4
 *
 * PARAMETERS
 *	bFileData	in	file data
 *	sImage		out	image data
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BOOL SaveFile_RLE4(PBYTE bFileData,
				   PIMAGE sImage) {
	return TRUE;
}

/* **********************************************
 * NAME				SaveFile_RLE8
 *
 * PARAMETERS
 *	bFileData	in	file data
 *	sImage		out	image data
 *
 * ALGORITHM
 *	...
 *
 * COMMENT
 *	...
 *
 * RETURN VALUE
 *	...
 * **********************************************/

BOOL SaveFile_RLE8(PBYTE bFileData,
				   PIMAGE sImage) {
	return TRUE;
}

/////////////////////////////////////////////////